Methods, systems, and devices for detecting and resolving risks associated with shipped objects

ABSTRACT

Methods, systems, and devices are disclosed for resolving a risk associated with a shipped physical object. The methods and servers comprise associating a time with a geographical region. The methods and servers also comprise receiving a set of locations associated with transport of a physical object. In addition, the methods and servers comprise determining that the set of locations fails to satisfy a condition associated with the time and the geographical region. The sensor devices report location data to a server at a first time interval, wherein the location data fails to satisfy a condition associated with a time and a geographical region. The sensor devices also receive an indication of a panic mode. In addition, the sensor devices also report location data to the server at a second time interval, wherein the second time interval is different than the first time interval.

TECHNICAL FIELD

The present disclosure relates to the field of shipping and, moreparticularly, methods, systems, and devices for detecting and resolvingrisks associated with shipped objects.

BACKGROUND

Information regarding shipped objects (e.g., packages, envelopes, orother physical objects) is often useful for various entities involved inthe shipping process. For example, status information of a shippedobject may be useful for a sender, a receiver, or the entity responsiblefor managing the shipping process. Such status information may include,for example, whether a shipped object has arrived at its destination orthe latest known location of a shipped object during transit from anorigin to the destination.

Location information is commonly provided by updating a locationassociated with a shipped object when the object arrives to a specificlocation. For example, upon arrival at an intermediary shippingfacility, a shipped object's latest known location may be updated toreflect a location associated with the intermediary shipping facility.However, existing techniques for tracking a shipped object are oftenlimited in usefulness when situations arise that may be a risk to ashipped object. For example, existing techniques for tracking a shippedobject are often limited in usefulness for a shipped object that is offpace (e.g., the shipped object is delayed) or off track (e.g., theshipped object has deviated from a planned route) because existingtechniques frequently rely on a shipped object passing throughfacilities having known locations.

Improvements in techniques for detecting and resolving risks associatedwith shipped objects are desirable.

SUMMARY

In one disclosed embodiment, a method for a shipped physical object isdisclosed. The method comprises associating a time with a geographicalregion, receiving a set of locations associated with transport of aphysical object, and determining, using a processor, that the set oflocations fails to satisfy a condition associated with the time and thegeographical region.

In another disclosed embodiment, a server for a shipped physical objectis disclosed. The server comprises a processor and memory. The memoryhas instructions which, when executed by the processor, cause the serverto perform operations comprising associating a time with a geographicalregion, receiving a set of locations associated with transport of aphysical object, and determining, using a processor, that the set oflocations fails to satisfy a condition associated with the time and thegeographical region.

In another disclosed embodiment, a sensor device is disclosed. Thesensor device comprises a sensor, a transceiver, a processor, andmemory. The memory has instructions which, when executed by theprocessor, cause the sensor device to perform operations comprisingreporting location data, captured by the sensor, to a server using thetransceiver at a first time interval, wherein the location data fails tosatisfy a condition associated with a time and a geographical region,receiving, using the transceiver, an indication of a panic mode, andreporting location data, captured by the sensor, to the server using thetransceiver at a second time interval, wherein the second time intervalis different than the first time interval.

Additional aspects related to the embodiments will be set forth in partin the description which follows, and in part will be obvious from thedescription, or may be learned by practice of the invention.

It is to be understood that both the foregoing general description andthe following detailed description are exemplary and explanatory onlyand are not restrictive of the invention, as claimed.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 illustrates an example system that may be used for implementingthe disclosed embodiments.

FIG. 2 illustrates an example device that may be used for implementingthe disclosed embodiments.

FIG. 3 illustrates an example device that may be used for implementingthe disclosed embodiments.

FIG. 4 illustrates an example method for determining a potential risk inaccordance with the disclosed embodiments.

FIG. 5 illustrates an example method for determining distance and/ortime in accordance with the disclosed embodiments.

FIG. 6 illustrates an example method for implementing a panic button inaccordance with the disclosed embodiments.

FIG. 7 illustrates an example method for implementing a panic button inaccordance with the disclosed embodiments.

FIG. 8 illustrates an example screenshot of a user interface inaccordance with the disclosed embodiments.

FIG. 9 illustrates an example screenshot of a user interface inaccordance with the disclosed embodiments.

DETAILED DESCRIPTION

Reference will now be made in detail to the example embodiments, whichare illustrated in the accompanying drawings. Wherever possible, thesame reference numbers will be used throughout the drawings to refer tothe same or like parts.

Shipped object location information, as well as other environmentalinformation associated with a shipped object, can be determined moreaccurately and frequently by including a sensor device with or near ashipped object. A server may store data that links a sensor device withone or more shipped objects, if, for example, one sensor device isplaced in a container that includes a plurality of shipped objects. Assensor data is received from the sensor device at the server, the datamay be associated with shipped objects associated with the sensordevice.

A shipped object may be associated with a number of risks, such as, forexample, a risk that a shipped object is lost, damaged, or stolen. Thelocation data received from a sensor device helps, for example, toimprove handling of risks associated with a shipped object. For example,one or more geofences (i.e., selected or defined geographical areas) maybe established. Times may be associated with the established geofences,such that, if a sensor device (and thus a shipped object) does not reachor exit a particular geofence by a selected time, a risk may bedetected.

A number of operations can be performed based on a detected risk. Forexample, a panic button may be enabled in a user interface. If the panicbutton is selected, a number of actions may be performed such as, forexample transmitting a panic mode indication to the sensor device toalter a reporting time interval of sensor data, notifying one or moreparties associated with the shipped object that is associated with thesensor device, disabling any delay of location data about the shippedobject that is available in a user interface, and/or creating a customersupport case to resolve issues that will arise because of the determinedrisk.

FIG. 1 is a diagram illustrating an example system 100 that may be usedfor implementing the disclosed embodiments. System 100 includes, amongother things, one or more servers 110, one or more sensor devices 120,one or more user interfaces 130, one or more remote devices 140, and oneor more data sources 150. In some embodiments, as depicted in FIG. 2 ,server 110 includes, among other things, one or more processors 210,memory 220, and one or more transceivers 230. Processor 210 may be anyprocessor suitable for the execution of a computer program including, byway of example, one or more general purpose microprocessors or specialpurpose microprocessors. Memory 220 may store computer program code thatmay be executed by the processor 210. Transceiver 230 may facilitatesending data to and receiving data from external sources (e.g., via theInternet or via a cellular network). For example, server 110 may beconfigured to send data to and receive data from a sensor device 120, auser interface 130, a remove device 140, and/or a data source 150. Insome embodiments, memory 220 of server 110 also stores a database. Thedatabase may comprise, for example, data regarding the status (e.g.,data regarding location, acceleration, motion, temperature, pressure,and/or other environmental parameters) of one or more shipped objects.

In some embodiments, as depicted in FIG. 3 , sensor device 120 includes,among other things, one or more sensors 310, one or more processors 320,memory 330, one or more wake-up mechanisms 340, one or more transceivers350, and one or more antennas 360. Sensor(s) 310 may measure one or moreenvironmental parameters associated with the sensor device 120. Forexample, a sensor 310 may measure acceleration, motion, temperature,pressure, location, and/or other environmental parameters. For example,a sensor 310 may be a GPS sensor that measures the GPS coordinatesassociated with sensor device 120. Memory 330 may store computer programcode that may be executed by the processor 320. Processor 320 may beconfigured to monitor sensor(s) 310. Processor 320 may, for example,store monitored sensor data in memory 330 and/or may transmit monitoredsensor data via transceiver 350 and antenna 360. While sensor device 120is depicted as a single device, sensor device 120 may also be a set ofdevices that operate in conjunction. For example, a set of devices mayinclude sensors 310 that send monitored sensor data to another devicethat transmits monitored sensor data via a transceiver 350 and antenna360.

In some embodiments, sensor device 120 is capable of entering a “sleep”mode in which some or all of its components are powered off or put in alow-power state. Wake-up mechanism 340 may receive power in such a sleepmode and may be configured to cause sensor device 120 to resume normaloperation upon receiving a signal to exit sleep mode. For example,wake-up mechanism 340 may be connected to a clock (not shown), wherein,at a predetermined time determined based on the clock, the wake-upmechanism 340 causes sensor device 120 to resume normal operation.

Transceiver 350 may facilitate sending data to and receiving data fromexternal sources (e.g., via the Internet or via a cellular network).Transceiver 370 may utilize antenna 360 to send and receive data via,for example, a cellular network. In some embodiments, memory 330 storesdata regarding the destination for data obtained from sensor(s) 310.Sensor device 120 may, for example, be configured to transmit, usingtransceiver 350 and antenna 360, data from sensor(s) 310 to server 110.In some embodiments sensor device 120 and server 110 interact directly.However, in other embodiments, any number of intermediary devices mayroute data sent between sensor device 120 and server 110.

In some embodiments, memory 330 stores a predetermined transmissionrate. Sensor data from sensor(s) 310 may be transmitted, usingtransceiver 350 and antenna 360, to server 110 at a rate thatcorresponds to the predetermined transmission rate. In some embodiments,if data temporarily cannot be sent from sensor device 110 (e.g., due toa temporary loss of cellular reception or due to the sensor device 110being in an “airplane” mode in which the transceiver 350 and antenna 360are turned off), data from sensor(s) 310 may be temporary stored inmemory 330 until data can be sent from sensor device 110, and,optionally, may be sent in a batch to server 110.

In some embodiments, the sensor device 120 is capable of receivingnotifications regarding altered modes of operation. For example, sensordevice 120 may be notified that it should enter a special mode in whichsensor data is transmitted to server 110 at an altered time interval.

In some embodiments, sensor device 120 is placed within or near ashipped object. Server 110 may store data that associates a shippedobject identifier with sensor device 120. In some embodiments, more thanone shipped object may be associated with a single sensor device 120.Thus, as data is received by server 110 from sensor device 120, the datamay be associated with each shipped object that is associated withsensor device 120.

User interface 130 provides a user interface for accessing informationregarding shipments. For example, user interface 130 may display atravelled path of a shipped object (based on a travelled path of sensordevice 120) based on data stored in server 110. Moreover, user interface130 may display historical and current alerts associated with a shippedobject. For example, in some embodiments, server 110 may send userinterface 130 an indication that a potential risk associated with ashipped object is present. The user interface 130 may be configured todisplay a panic button in response to the potential risk. In someembodiments, a panic button is a selectable visual indication that apanic mode may be entered. Thus, a user may select the panic button tocause various actions to occur, described in more detail below. Aselection may be received in a number of ways, including, for example, amouse click, a finger touch (e.g., if a user interface is displayed on atouch-sensitive screen), a textual entry, a spoken command, etc.

In some embodiments, user interface 130 is an application that isexecuted on server 110. In such embodiments, a user may use a device(e.g., a computer, a mobile phone, a laptop, etc.) to access the userinterface 130 remotely. In other embodiments, however, user interface130 could be executed locally on a user's device. In such embodiments,user interface 130 may obtain data from server 110. Moreover, userinterface 130 may be a single user interface that users (e.g.,registered senders or receivers of a shipped package) and administrators(e.g., individuals associated with the entity responsible for managingthe shipping process) can access. Alternatively, user interface 130 maybe two or more user interfaces configured for access by various entities(e.g., one user interface that can be accessed by users and another userinterface, with greater authorization, that can be accessed byadministrators).

System 100 may also include a number of remote devices 140. For example,a user may provide a phone number for a mobile device to receive alerts.In addition to, or as an alternative to, sending indications ofpotential risks to user interface 130, server 110 may send indicationsof potential risks to remote devices 140. For example, an indication ofa potential risk may be sent to a user's mobile device, the mobiledevice may display a panic button, and the user may select the panicbutton to cause various actions to occur. Moreover, server 110 may beconfigured to send other information to remote devices 140. For example,server 110 may be configured to send remote devices 140 information inresponse to a determination that a panic button has been selected.

System 100 may also include a number of data sources 150. A data source150 may be any source of data other than sensor device 120, including,for example, a schedule of flights, a weather forecast, traffic data,etc. Server 110 may access data sources 150 for a variety of reasons,such as, for example, to determine a travel path to a destination,including alternate travel paths once a shipped object is already inroute to a destination, or to calculate an estimated time and/ordistance to a location on the travel path.

FIG. 4 illustrates an example method 400 for determining a potentialrisk. Method 400 begins with a generation of a time-based geofence (step410). The term “geofence” refers to a selected or defined geographicalarea. For example, server 110 may store geographical areas surrounding anumber of known locations. Thus, for example, a geofence may begenerated for a geographical area surrounding an intermediary shippingfacility that is on a shipped object's scheduled travel path. Moreover,a geofence can be generated for new locations. For example, a geofencemay be generated for an area (e.g., 1 mile, 5 miles, 10 miles)surrounding the destination of a shipped object.

A “time-based geofence” refers to a geofence that is associated with oneor more times. In some embodiments, a time is automatically associatedwith the generated geofence. For example, a time that is a predeterminedamount of time before an estimated delivery time, or an estimatedarrival to an intermediary geofence along a scheduled travel path, maybe associated with the generated geofence.

Alternatively, the time associated with a geofence may be selected by auser. For example, as depicted in FIG. 8 , a user may be provided with amenu 800 that enables the user to indicate which geofence a time-basedrule will apply to (e.g., a destination geofence or an intermediarygeofence), what type of action is associated with the geofence (e.g., ashipped object entering a geofence or a shipped object exiting ageofence), whether to associate the geofence with a time (e.g., atime-based event), and whether the time should be a specific time or aspecified number of hours from an event (e.g., a specified number ofhours after the geofence is created, a specified number of hours after ajourney for the shipped object begins, or a specified number of hoursafter an estimated time of arrival to, or departure from, the geofence).For example, as depicted in FIG. 9 , a user may be provided with a menu900 that enables the user to enter a time, a time zone, and a date toassociate with a geofence.

In some embodiments, a determination is made that sensor device 120 hasnot satisfied a time based event (step 420). For example, adetermination may be made that sensor device 120 has not reached anylocation within the time-based geofence by the time associated with thetime-based geofence. Alternatively, for example, a determination may bemade that sensor device 120 has not exited an area associated with thetime-based geofence by the time associated with the time-based geofence.

To determine whether the sensor device 120 has not reached any locationwithin the time-based geofence by the time associated with thetime-based geofence, a history of the past locations of the sensordevice 120 may be analyzed to determine if any location falls within anarea associated with the time-based geofence by the time associated withthe time-based geofence. Alternatively, for example, each locationcapture associated with the sensor device 120 may be compared to an areaassociated with the time-based geofence and a flag may be cleared once alocation associated with the sensor device 120 falls within an areaassociated with the time-based geofence; a determination may be made asto whether the flag has been cleared at or before the time associatedwith the time-based geofence.

To determine whether the sensor device 120 has not exited an areaassociated with the time-based geofence by the time associated with thetime-based geofence, a history of the past locations of the sensordevice 120 may be analyzed to determine if any location falls outside ofan area associated with the time-based geofence by the time associatedwith the time-based geofence. Alternatively, for example, each locationcapture associated with the sensor device 120 may be compared to an areaassociated with the time-based geofence and a flag may be cleared once alocation associated with the sensor device 120 falls outside an areaassociated with the time-based geofence; a determination may be made asto whether the flag has been cleared at or before the time associatedwith the time-based geofence.

In some embodiments, a potential risk is determined based on a failureof the sensor device 120 to satisfy the time-based event (step 430).While the above process is explained with reference to one time-basedgeofence and one-time based event, more than one time-based geofence maybe used for a shipped object and one that one time-based event may beapplied to a time-based geofence. For example, a geofence may begenerated and associated with both an expected entrance time and anexpected exit time.

FIG. 5 illustrates an example method 500 for determining an estimateddistance or time to reach a destination or geofence for a shippedobject. Method 500 begins with a determination of a location of a sensordevice 120 associated with the shipped object (step 510). For example,server 110 may store a database which links a shipped object to aparticular sensor device 120 being shipped with the shipped object. Insome embodiments, sensor device 120 may automatically transmit server110 its location, for example, at predetermined intervals. In suchembodiments, a latest received location may be used. In otherembodiments, server 110 may send sensor device 120 a location requestand, in response to the location request, may receive a location of thesensor device 120.

In some embodiments, server 110 then calculates a distance and/or timeto reach a shipped object's destination or a geofence before thedestination (step 520). For example, server 110 may analyze pastshipment data associated with the current location (e.g., the origin oran intermediary location determined from the location of the sensordevice 120) and the destination or geofence location. For example, anestimated time and/or distance between a current location and adestination or geofence location may be determined based on past travelroutes used for shipping an object from the current location to thedestination or geofence location, based on, for example, an average timeand/or distance of the past travel routes.

Other data may also be utilized to determine an estimated distanceand/or time. For example, server 110 may determine from a data source150 that one or more past travel routes are unavailable (e.g., due toroad construction or inclement weather). Based on this additional data,some past travel routes may be ignored. Alternatively, for example, aweighted average may be calculated by assigning each past travel route aprobability associated with the probability that the travel route willbe used for the current shipped object.

In some embodiments, server 110 then transmits the calculated distanceand/or time to user interface 130 (step 530). User interface 130 mayenable a user or an administrator to view the estimated distance and/ortime for a shipped object to reach a destination or geofence location.

FIG. 6 illustrates an example method 600 for implementing a panicbutton. Method 600 begins with a determination of a potential riskassociated with a shipped object (step 610). For example, as discussedabove, a sensor device 120 may fail to enter or exit a time-basedgeofence by a particular time and a determination may be made that thesensor device 120 is associated with one or more shipped objects.Alternatively, for example, sensor data from sensor device 120 mayindicate a risk based on, for example, a high or low temperature, a highor low acceleration, a high or low pressure, or a high or low speed. Insome embodiments, the determination of a potential risk is made at theserver 110. In other embodiments, the determination of a potential riskis made at the sensor device 120.

In some embodiments, based on the potential risk, server 110 enables apanic button in the user interface 130 (step 620). In some embodiments,the panic button may only be enabled when a potential risk is receivedfrom sensor device 120 and one or more additional conditions aresatisfied. The one or more additional conditions may include, forexample: the shipped object being high value or the shipped objectcontaining perishable material. However, in other embodiments, a panicbutton may always be enabled in user interface 130 for one or more usersof the user interface 130. Additionally, for example, an administratormay have access to the panic button even without an indication of apotential risk from sensor device 120. As discussed above, the panicbutton may be a selectable visual indication that a panic mode may beentered. A panic button may be selected in a number of ways, including,for example, a mouse click, a finger touch (e.g., when a user interfaceis displayed on a touch-sensitive screen), a textual entry, a spokencommand, etc.

In some embodiments, server 110 receives an indication that the panicbutton has been selected (step 630). In response to the indication thatthe panic button has been selected, server 110 may perform a number ofactions, either simultaneously or in sequence. For example, server 110may perform one or more of the following actions: transmit a panic modeindication to sensor device 120 (step 640), notify one or more partiesassociated with the shipped object (step 650), disable a delay oflocation data available to the user interface 130 (step 660), and/orcreate a customer support case (step 670).

At step 640, sensor device 120 may receive the panic mode indicationfrom the server 110. As discussed above, sensor device 120 may have apredetermined rate of transmitting its location and/or otherenvironmental parameters (e.g., battery life, temperature, humidity,pressure, light, acceleration, or motion) to server 110. As discussed inmore detail below, in response to receiving the panic mode indication,sensor device 120 may increase the rate in which it transmits itslocation/or other environmental parameters to server 110 for example,for a predetermined amount of time or until another indication isreceived that panic mode has been resolved. In some embodiments, theincreased rate is predetermined (e.g., twice the rate of when panic modeis not active or as frequently as the device supports transmission). Inother embodiments, the increased rate of location and environmentaltransmissions is received from server 110.

At step 650, the parties that are notified of the panic mode indicationmay include, for example, company security, a legal department, a policedepartment closest to the shipped object's location, one or moremonitoring or intervention groups, and/or all participants who havesigned up to receive notifications regarding a particular shipped object(e.g., a shipped's object's sender and/or receiver).

To increase security for certain carriers, location data that isdisplayed in user interface 130 may ordinarily be delayed (e.g., by 30minutes) when a panic mode is not active. At step 660, the delay may beremoved such that the user interface 130 displays the latest knownlocation data of a shipped object without any intentional delay for apredetermined amount of time or until another indication is receivedthat panic mode has been resolved.

At step 670, a customer support case may be created. A customer supportcase may be used to ensure that any issues associated with the shippedobject are handled and tracked, including, for example, any billingissues that arise by a shipped object being delayed, lost, stolen, ordamaged.

In some embodiments, a determination may be made that the riskassociated with the shipped object has abated (step 680). For example,if the potential risk was associated with a determination that a shippedobject has not reached a time-based geofence by a predetermined time, adetermination that the risk has abated may occur if the shipped objectreaches the time-based geofence. Alternatively, or additionally, adetermination may be made that the risk associated with the shippedobject has abated if the shipped object is found at a secure location.For example, a determination may be made that the risk has abatedbecause the shipped object is located at a known shipping facility andwas delayed due to weather. Alternatively, or additionally, adetermination may be made that the risk associated with the shippedobject has abated if a particular button in user interface 130 isselected.

In some embodiments, based on the determination that the risk hasabated, panic mode is resolved (step 690). For example, any changedsettings that were made in steps 640-670 may be undone. Moreover, whilethe above process explains a single instance of a panic mode, a givenshipped object may be associated with a panic mode more than once. Thatis, once a panic mode has been resolved, a panic mode may be enteredinto again.

FIG. 7 illustrates an example method 700 for implementing a panicbutton. Method 700 begins with a sensor device 120 reporting sensor datato server 110 at a predetermined time interval (step 710). For example,as discussed above, sensor device 110 may store a predetermined timeinterval to use during normal operation.

In some embodiments, sensor device 120 receives a panic mode indicationfrom server 110 (step 720). Based on the panic mode indication, sensordevice 120 may alter the time interval at which it reports sensor data(step 730). For example, as discussed above, sensor device 120 may storean altered reporting time interval associated with panic mode or mayreceive an altered reporting time interval from server 110.

Sometime after receiving the panic mode indication, sensor device 120may receive an indication from server 110 that panic mode has beenresolved (step 740). Based on the indication that panic mode has beenresolved, sensor device 120 may resume reporting sensor data at itspredetermined time interval for normal operation (step 750).

While various operations are described above as being performed byserver 110, in some alternative embodiments sensor device 120 performssome of or all of the operations described above as being performed byserver 110. For example, a determination that a sensor device 130 hasfailed to satisfy a time-based geofence may be made by server 110 or bysensor device 120.

Embodiments and all of the functional operations described in thisspecification can be implemented in digital electronic circuitry, or incomputer software, firmware, or hardware, including the structuresdisclosed in this specification and their structural equivalents, or incombinations of them. Embodiments can be implemented as one or morecomputer program products. i.e., one or more modules of computer programinstructions encoded on a computer readable medium, e.g., a machinereadable storage device, a machine readable storage medium, a memorydevice, or a machine readable propagated signal, for execution by, or tocontrol the operation of, data processing apparatus.

The term “data processing apparatus” encompasses all apparatus, devices,and machines for processing data, including by way of example aprogrammable processor, a computer, or multiple processors or computers.The apparatus can include, in addition to hardware, code that creates anexecution environment for the computer program in question, e.g., codethat constitutes processor firmware, a protocol stack, a databasemanagement system, an operating system, or a combination of them. Apropagated signal is an artificially generated signal, e.g., amachine-generated electrical, optical, or electromagnetic signal, whichis generated to encode information for transmission to suitable receiverapparatus.

A computer program (also referred to as a program, software, anapplication, a software application, a script, or code) can be writtenin any form of programming language, including compiled or interpretedlanguages, and it can be deployed in any form, including as astand-alone program or as a module, component, subroutine, or other unitsuitable for use in a computing environment. A computer program does notnecessarily correspond to a file in a file system. A program can bestored in a portion of a file that holds other programs or data (e.g.,one or more scripts stored in a markup language document), in a singlefile dedicated to the program in question, or in multiple coordinatedfiles (e.g., files that store one or more modules, sub programs, orportions of code). A computer program can be deployed to be executed onone computer or on multiple computers that are located at one site ordistributed across multiple sites and interconnected by a communicationnetwork.

The processes and logic flows described in this specification (e.g.,FIGS. 4-7 ) can be performed by one or more programmable processorsexecuting one or more computer programs to perform functions byoperating on input data and generating output. The processes and logicflows can also be performed by, and apparatus can also be implementedas, special purpose logic circuitry, e.g., an FPGA (field programmablegate array) or an ASIC (application specific integrated circuit). Whiledisclosed processes include particular process flows, alternative flowsor orders are also possible in alternative embodiments.

Processors suitable for the execution of a computer program include, byway of example, both general and special purpose microprocessors, andany one or more processors of any kind of digital computer. Generally, aprocessor will receive instructions and data from a read only memory ora random access memory or both. The essential elements of a computer area processor for executing instructions and one or more memory devicesfor storing instructions and data. Generally, a computer will alsoinclude, or be operatively coupled to, a communication interface toreceive data from or transfer data to, or both, one or more mass storagedevices for storing data. e.g., magnetic, magneto optical disks, oroptical disks.

Moreover, a computer can be embedded in another device. Informationcarriers suitable for embodying computer program instructions and datainclude all forms of non-volatile memory, including by way of examplesemiconductor memory devices, e.g., EPROM, EEPROM, and flash memorydevices; magnetic disks, e.g., internal hard disks or removable disks;magneto optical disks; and CD ROM and DVDROM disks. The processor andthe memory can be supplemented by, or incorporated in, special purposelogic circuitry.

To provide for interaction with a user, embodiments of the invention canbe implemented on a computer having a display device, e.g., a CRT(cathode ray tube) or LCD (liquid crystal display) monitor, fordisplaying information to the user and a keyboard and a pointing device,e.g., a mouse or a trackball, by which the user can provide input to thecomputer. Other kinds of devices can be used to provide for interactionwith a user as well; for example, feedback provided to the user can beany form of sensory feedback, e.g., visual feedback, auditory feedback,or tactile feedback; and input from the user can be received in anyform, including acoustic, speech, or tactile input.

Embodiments can be implemented in a computing system that includes aback end component, e.g., as a data server, or that includes amiddleware component, e.g., an application server, or that includes afront end component, e.g., a client computer having a graphical userinterface or a Web browser through which a user can interact with animplementation of the invention, or any combination of such back end,middleware, or front end components. The components of the system can beinterconnected by any form or medium of digital data communication,e.g., a communication network. Examples of communication networksinclude a local area network (“LAN”) and a wide area network (“WAN”),e.g., the Internet.

The computing system can include clients and servers. A client andserver are generally remote from each other and typically interactthrough a communication network. The relationship of client and serverarises by virtue of computer programs running on the respectivecomputers and having a client/server relationship to each other.

Certain features which, for clarity, are described in this specificationin the context of separate embodiments, may also be provided incombination in a single embodiment. Conversely, various features which,for brevity, are described in the context of a single embodiment, mayalso be provided in multiple embodiments separately or in any suitablesub-combination. Moreover, although features may be described above asacting in certain combinations and even initially claimed as such, oneor more features from a claimed combination can in some cases be excisedfrom the combination, and the claimed combination may be directed to asubcombination or variation of a subcombination.

Particular embodiments have been described. Other embodiments are withinthe scope of the following claims.

1.-28. (canceled)
 29. A system for a shipped physical object comprising:one or more processors; and memory having instructions which, whenexecuted by the processor, cause the one or more processors to performoperations, comprising: associating a time with a geographical regionalong an expected travel path of the shipped physical object; receivinglocation data at a first rate associated with a sensor device within orattached to the shipped physical object, the received location datacomprising a set of locations; determining that the set of locationsfails to satisfy a condition associated with the time and thegeographical region; enabling a panic mode based on a selection via auser interface on a device remote from the physical object; receiving,corresponding to enablement of the panic mode, the location dataassociated with the sensor device at a frequency greater than the firstrate; storing the received location data received at the greaterfrequency; and notifying, in response to the enabled panic mode, a partyassociated with the physical object of the failed condition.
 30. Thesystem of claim 29, wherein the determination that the set of locationsfails to satisfy the condition comprises a determination that the set oflocations does not contain a location within the geographical regionbefore the time.
 31. The system of claim 29, wherein the determinationthat the set of locations fails to satisfy the condition comprises adetermination that the set of locations only contains locations withinthe geographical region before the time.
 32. The system of claim 29,further comprising: determining the time based on an expected arrivaltime to the geographical region or an expected departure time from thegeographical region.
 33. The system of claim 32, further comprising:determining the expected arrival time or the expected departure timebased on past travel routes between a most recent location from the setof locations and the geographical region.
 34. The system of claim 29,further comprising: displaying a panic button on the user interfacebased on the determination that the set of locations fails to satisfythe condition.
 35. The system of claim 29, further comprising:displaying a panic button on the user interface based on thedetermination that the set of locations fails to satisfy the conditionand the shipped physical object containing perishable material.
 36. Thesystem of claim 29, further comprising: displaying a panic button on theuser interface based on the determination that the set of locationsfails to satisfy the condition and the value of material in the shippedphysical object being above a threshold.
 37. The system of claim 29,wherein the user interface further comprises a panic button that enablesthe panic mode upon selection.
 38. The system of claim 29, furthercomprising: causing, in response to enablement of the panic mode,transmission of an indication of the enabled panic mode to the sensordevice.
 39. A method for a shipped physical object, comprising:associating a time with a geographical region along an expected travelpath of the shipped physical object; receiving location data at a firstrate associated with a sensor device within or attached to the shippedphysical object, the received location data comprising a set oflocations; determining that the set of locations fails to satisfy acondition associated with the time and the geographical region; enablinga panic mode based on a selection via a user interface on a deviceremote from the physical object; receiving, corresponding to enablementof the panic mode, the location data associated with the sensor deviceat a frequency greater than the first rate; storing the receivedlocation data received at the greater frequency; and notifying, inresponse to the enabled panic mode, a party associated with the physicalobject of the failed condition.
 40. The method of claim 39, wherein thedetermination that the set of locations fails to satisfy the conditioncomprises a determination that the set of locations does not contain alocation within the geographical region before the time.
 41. The methodof claim 39, wherein the determination that the set of locations failsto satisfy the condition comprises a determination that the set oflocations only contains locations within the geographical region beforethe time.
 42. The method of claim 39, further comprising: determiningthe time based on an expected arrival time to the geographical region oran expected departure time from the geographical region.
 43. The methodof claim 42, further comprising: determining the expected arrival timeor the expected departure time based on past travel routes between amost recent location from the set of locations and the geographicalregion.
 44. The method of claim 39, further comprising: displaying apanic button on the user interface based on the determination that theset of locations fails to satisfy the condition.
 45. The method of claim39, further comprising: displaying a panic button on the user interfacebased on the determination that the set of locations fails to satisfythe condition and the shipped physical object containing perishablematerial.
 46. The method of claim 39, further comprising: displaying apanic button on the user interface based on the determination that theset of locations fails to satisfy the condition and the value ofmaterial in the shipped physical object being above a threshold.
 47. Themethod of claim 46, wherein the user interface further comprises a panicbutton that enables the panic mode upon selection.
 48. The method ofclaim 39, further comprising: causing, in response to enablement of thepanic mode, transmission of an indication of the enabled panic mode tothe sensor device.